env = Environment( CCFLAGS=['-Wall'],
                   CPPPATH='.')

## Caso esteja debugando
if ARGUMENTS.get('debug', 0):
    env.Append( CCFLAGS=['-g'] )

## Files of SRC ###############################################################
## Source Files
gearserial_sources = Split("""main.c
                              gearserial.c
                              gearserial_interface.c
                              xmalloc.c
                              xerror.c""")
## Headers
gearserial_headers = Split("""gearserial.h
                              gearserial_interface.h
                              xmalloc.h
                              xerror.h""")
## Gui (glade) files
gearserial_gui     = Split("""gearserial_gui.glade""")

## Colection of files necessary for packages
gearserial_files = \
    gearserial_sources + \
    gearserial_headers + \
    gearserial_gui
###############################################################################

## Export files in a correct way ##############################################
#gearserial_export = []
#for pos in gearserial_files:
#    gearserial_export.append("src/" + pos)
#Export("gearserial_export")
###############################################################################

## To link and compile
env.ParseConfig('pkg-config gtk+-2.0 --cflags --libs')
env.ParseConfig('pkg-config libglade-2.0 --cflags --libs')

## Export, in some way, the dependency
map(File, gearserial_files)

## Compile the program
gearserial = env.Program('gearserial', gearserial_sources)
Default('gearserial')

## Install parameters #########################################################
env.Install( '/usr/bin', gearserial)
env.Install( '/usr/share/gearserial', gearserial_gui )
env.Alias('install', ['/usr/bin','/usr/share/gearserial'])
###############################################################################
#SharedLibrary('gearserial', ['gearserial.c', 'xerror.c', 'xmalloc.c'])
